package com.sxt.mapper;

import com.sxt.domain.SysUser;
import com.sxt.form.SysUserForm;
import com.sxt.query.SysUserQuery;
import com.sxt.vo.SysUserVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SysUserDao {

    /**
     * 根据用户名和密码查询用户
     * @param username
     * @param password
     * @return
     */
    SysUser selectByNameAndPassword(@Param("username") String username, @Param("password") String password);

    /**
     * 根据参数查询用户数据列表
     * @param query
     * @return
     */
    List<SysUserVO> selectList(SysUserQuery query);

    /**
     * 校验用户关键字是否重复
     *
     * @param query 包含 登录名/手机号/身份证号
     * @return
     */
    SysUserVO selectUserByKeywords(SysUserQuery query);

    /**
     * 新增用户
     *
     * @param sysUser
     */
    void insert(SysUser sysUser);

    /**
     * 修改用户密码
     *
     * @param id
     * @param password
     */
    void updatePassword(@Param("id") Integer id, @Param("password") String password);

}